<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>Blossom - 最适合国人使用的笔记项目！ | 二冰</title><noscript>开启JavaScript才能访问本站哦~</noscript><link rel="icon" href="https://bu.dusays.com/2023/11/08/654af68b25bb8.jpg"><!-- index.css--><link rel="stylesheet" href="/css/index.css?v=1.6.0"><!-- inject head--><link rel="stylesheet" href="https://cdn2.codesign.qq.com/icons/7pOrz0WXB5ZWJPX/latest/iconfont.css"><!-- aplayer--><!-- swiper--><link rel="stylesheet" href="https://cdn.staticfile.org/Swiper/11.0.5/swiper-bundle.min.css"><!-- Open Graph--><meta name="description" content="完全开源，私有部署，你的笔记不再宕机。"><!-- pwa--><script>(win => {
        win.saveToLocal = {
            set: function setWithExpiry(key, value, ttl) {
                if (ttl === 0)
                    return
                const now = new Date()
                const expiryDay = ttl * 86400000
                const item = {
                    value: value,
                    expiry: now.getTime() + expiryDay,
                }
                localStorage.setItem(key, JSON.stringify(item))
            },

            get: function getWithExpiry(key) {
                const itemStr = localStorage.getItem(key)

                if (!itemStr) {
                    return undefined
                }
                const item = JSON.parse(itemStr)
                const now = new Date()

                if (now.getTime() > item.expiry) {
                    localStorage.removeItem(key)
                    return undefined
                }
                return item.value
            }
        }

        const DarkModeStatus = localStorage.getItem('theme')
        if (DarkModeStatus !== null) {
            if (DarkModeStatus === 'dark') {
                document.documentElement.setAttribute('data-theme', 'dark')
            } else {
                document.documentElement.setAttribute('data-theme', 'light')
            }
        }

        const asideStatus = saveToLocal.get('aside-status')
        if (asideStatus !== undefined) {
            if (asideStatus === 'hide') {
                document.documentElement.classList.add('hide-aside')
            } else {
                document.documentElement.classList.remove('hide-aside')
            }
        }
    }
)(window)

console.log(
    "%c Program: Hexo %c Theme: Solitude %c Version: v1.6.0",
    "border-radius:5px 0 0 5px;padding: 5px 10px;color:white;background:#ff3842;",
    "padding: 5px 10px;color:white;background:#3e9f50;",
    "border-radius:0 5px 5px 0;padding: 5px 10px;background:#0084ff;color:white;"
);</script><!-- global head--><script>const GLOBAL_CONFIG = {
    root: '/',
    algolia: undefined,
    localsearch: {"preload":false,"path":"/search.xml"},
    runtime: '2023-04-20 00:00:00',
    lazyload: {
        enable: false,
        error: '/img/error_load.png'
    },
    highlight: {
        enable: true,
        limit: 200,
        expand: true,
        copy: true,
        syntax: 'highlight.js'
    },
    randomlinks: false,
    lang: {
        theme: {
            dark: '已切换至深色模式',
            light: '已切换至浅色模式',
        },
        copy: {
            success: '复制成功',
            error: '复制失败',
        },
        backtop: '返回顶部',
        lately: {
            second: '秒',
            minute: '分钟',
            hour: '小时',
            day: '天',
            month: '个月',
            year: '年',
            ago: '前',
            error: 'NaN',
        },
        search: {
            empty: '找不到你查询的内容：${query}',
            hit: '找到 ${hits} 条结果，用时 ${time} 毫秒',
            placeholder: '输入关键词快速查找',
        },
        chs: {
            chs_to_cht: '繁體中文',
            cht_to_chs: '简体中文',
        }
    },
    aside: {
        sayhello: {
            morning: '一日之计在于晨',
            noon: '吃饱了才有力气干活',
            afternoon: '集中精力，攻克难关',
            night: '不要太劳累了，早睡更健康',
            goodnight: '睡个好觉，保证精力充沛',
        },
        sayhello2: ["🤖️ 数码科技爱好者","🔍 分享与热心帮助","🏠 智能家居小能手","🔨 设计开发一条龙","🤝 专修交互与设计","🏃 脚踏实地行动派","🧱 团队小组发动机","💢 壮汉人狠话不多","🎮 电竞游戏爱好者"],
    },
    covercolor: {
        enable: false
    },
    comment: {
        enable: false,
        type: '',
        commentBarrage: false,
        randomInfoStart: ["聪敏的","可爱的","美丽的"],
        randomInfoEnd: ["白菜","小可爱","小仙女"],
        twikoo: {
            url: '',
            accessToken: ''
        },
        waline: {
            url: '',
        }
    },
    lightbox: 'null',
    rightside: {
        enable: true
    },
    ai: {
        enable: false,
        key: '',
        talk: '我是王卓Sco开发的摘要生成助理ScoGPT，ScoGPT在静态部署时进行摘要的撰写，并且在访客访问时通过ScoCorrection转译后的文本摘要实现工具。我在这里只负责已经生成的摘要显示，你无法与我直接沟通，但我可以回答一些预设的问题。',
        randomPost: false,
    },
    music: {
        enable: false,
    },
    translate: undefined,
};</script><meta name="generator" content="Hexo 7.0.0"></head><body id="body"><!-- universe--><canvas id="universe"></canvas><!-- loading--><!-- console--><div id="console"><div class="close-btn" onclick="sco.hideConsole()"><i class="solitude st-close-fill"></i></div><div class="button-group"><div class="console-btn-item"><a class="darkmode_switchbutton" onclick="sco.switchDarkMode()" title="昼夜切换" href="javascript:void(0);"><i class="solitude st-moon-clear-fill"></i></a></div><div class="console-btn-item" id="consoleHideAside"><a class="asideSwitch" onclick="sco.switchHideAside()" title="边栏显示控制" href="javascript:void(0);"><i class="solitude st-side-bar-fill"></i></a></div></div><div class="console-mask" onclick="sco.hideConsole()"></div></div><!-- sidebar--><div id="sidebar" style="zoom: 1;"><div id="menu-mask" style="display: none;"></div><div id="sidebar-menus"><span class="sidebar-menu-item-title">功能</span><div class="sidebar-menu-item"><a class="darkmode_switchbutton menu-child" onclick="sco.switchDarkMode()" href="javascript:void(0);"><i class="solitude st-moon-clear-fill"></i><span>显示模式</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><span>首页</span></a></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>文库</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/archives/"><i class="solitude  solitude st-folder-fill"></i><span>文章列表</span></a></li><li><a class="site-page child" href="/categories/"><i class="solitude  solitude st-checkbox-multiple-blank-fill"></i><span>全部分类</span></a></li><li><a class="site-page child" href="/tags/"><i class="solitude  solitude st-price-tag-fill"></i><span>全部标签</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>友链</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/moments/"><i class="solitude  solitude st-wifi-fill"></i><span>友链鱼塘</span></a></li><li><a class="site-page child" href="/links/"><i class="solitude  solitude st-group-fill"></i><span>友情链接</span></a></li><li><a class="site-page child" href="javascript:travelling()"><i class="solitude  solitude st-gift-fill"></i><span>宝藏博主</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>我的</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/gallery/"><i class="solitude  solitude st-image-fill"></i><span>相册集</span></a></li><li><a class="site-page child" href="/equipment/"><i class="solitude  solitude st-laptop-line"></i><span>装备</span></a></li><li><a class="site-page child" href="/tlink/"><i class="solitude  solitude st-tools-fill"></i><span>工具箱</span></a></li><li><a class="site-page child" href="/music/"><i class="solitude  solitude st-disc-fill"></i><span>音乐馆</span></a></li><li><a class="site-page child" href="/essay/"><i class="solitude  solitude st-tools-fill"></i><span>说说</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>关于</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/about/"><i class="solitude  solitude st-contacts-fill"></i><span>关于本站</span></a></li></ul></div></div><span class="sidebar-menu-item-title">标签</span><div class="card-widget card-tags card-archives card-webinfo card-allinfo"><div class="card-tag-cloud"><a href="/tags/Windows%E8%BD%AF%E4%BB%B6/">Windows软件<sup>1</sup></a><a href="/tags/OCR%E5%B7%A5%E5%85%B7/">OCR工具<sup>1</sup></a><a href="/tags/%E5%9B%BE%E5%BA%8A/">图床<sup>1</sup></a><a href="/tags/markdown/">markdown<sup>1</sup></a><a href="/tags/docker/">docker<sup>4</sup></a><a href="/tags/%E7%9F%A5%E8%AF%86%E7%AC%94%E8%AE%B0/">知识笔记<sup>1</sup></a><a href="/tags/%E4%BB%BB%E5%8A%A1%E8%AE%A1%E5%88%92/">任务计划<sup>1</sup></a><a href="/tags/%E5%BE%85%E5%8A%9E%E4%BA%8B%E9%A1%B9/">待办事项<sup>1</sup></a><a href="/tags/%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE/">开源项目<sup>1</sup></a><a href="/tags/%E5%8D%9A%E5%AE%A2/">博客<sup>2</sup></a><a href="/tags/hexo/">hexo<sup>1</sup></a><a href="/tags/vercel/">vercel<sup>2</sup></a><a href="/tags/%E7%BE%A4%E6%99%96/">群晖<sup>2</sup></a><a href="/tags/API/">API<sup>1</sup></a><a href="/tags/%E6%80%9D%E7%BB%B4%E5%AF%BC%E5%9B%BE/">思维导图<sup>1</sup></a><a href="/tags/Chatgpt/">Chatgpt<sup>1</sup></a><a href="/tags/AI%E5%90%88%E9%9B%86/">AI合集<sup>1</sup></a><a href="/tags/%E6%BA%90%E7%A0%81/">源码<sup>1</sup></a><a href="/tags/%E7%83%9F%E8%8A%B1%E6%BA%90%E7%A0%81/">烟花源码<sup>1</sup></a></div></div></div></div><!-- keyboard--><div class="post" id="body-wrap"><header class="post-bg" id="page-header"><nav class="show" id="nav"><div id="nav-group"><div id="blog_name"><a id="site-name" href="/" title="返回博客主页"><span class="title">TWO-ICE</span></a></div><div id="page-name-mask"><div id="page-name"><a id="page-name-text" onclick="sco.toTop()">Blossom - 最适合国人使用的笔记项目！</a></div></div><div id="menus"><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><span>首页</span></a></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>文库</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/archives/"><i class="solitude  solitude st-folder-fill"></i><span>文章列表</span></a></li><li><a class="site-page child" href="/categories/"><i class="solitude  solitude st-checkbox-multiple-blank-fill"></i><span>全部分类</span></a></li><li><a class="site-page child" href="/tags/"><i class="solitude  solitude st-price-tag-fill"></i><span>全部标签</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>友链</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/moments/"><i class="solitude  solitude st-wifi-fill"></i><span>友链鱼塘</span></a></li><li><a class="site-page child" href="/links/"><i class="solitude  solitude st-group-fill"></i><span>友情链接</span></a></li><li><a class="site-page child" href="javascript:travelling()"><i class="solitude  solitude st-gift-fill"></i><span>宝藏博主</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>我的</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/gallery/"><i class="solitude  solitude st-image-fill"></i><span>相册集</span></a></li><li><a class="site-page child" href="/equipment/"><i class="solitude  solitude st-laptop-line"></i><span>装备</span></a></li><li><a class="site-page child" href="/tlink/"><i class="solitude  solitude st-tools-fill"></i><span>工具箱</span></a></li><li><a class="site-page child" href="/music/"><i class="solitude  solitude st-disc-fill"></i><span>音乐馆</span></a></li><li><a class="site-page child" href="/essay/"><i class="solitude  solitude st-tools-fill"></i><span>说说</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="javascript:void(0);"><span>关于</span></a><ul class="menus_item_child"><li><a class="site-page child" href="/about/"><i class="solitude  solitude st-contacts-fill"></i><span>关于本站</span></a></li></ul></div></div></div><div id="nav-left"></div><div id="nav-right"><div class="nav-button" id="randomPost_button"><a class="site-page" onclick="toRandomPost()" title="随机一篇文章" href="javascript:void(0);"><i class="solitude st-signal-tower-fill"></i></a></div><div class="nav-button" id="search-button"><a class="site-page social-icon search" href="javascript:void(0);" title="搜索"><i class="solitude st-search-line"></i></a></div><div class="nav-button" id="nav-console"><a class="console_switchbutton" onclick="sco.showConsole()" title="中控台" href="javascript:void(0);"><i class="solitude st-dashboard-fill"></i></a></div><div class="nav-button" id="nav-totop" onclick="sco.toTop()"><a class="totopbtn"><i class="solitude st-arrow-up-line"></i><span id="percent">0</span></a></div><div id="toggle-menu"><a class="site-page"><i class="solitude st-menu-line"></i></a></div></div></div></nav><div class="coverdiv" id="coverdiv"><img class="nolazyload" id="post-cover" src="https://img.twoice.fun:666//i/2023/12/14/0-2.jpg" alt="Blossom - 最适合国人使用的笔记项目！"></div><div id="post-info"><div id="post-firstinfo"><div class="meta-firstline"><a class="post-meta-original" title="该文章为原创文章，注意版权协议">原创</a><span class="post-meta-categories"><a class="post-meta-categories" href="/categories/docker/">docker</a></span><div class="tag_share"><div class="post-meta__tag-list"><a class="post-meta__tags" href="/tags/docker/"><span class="tags-name tags-punctuation">docker</span></a><a class="post-meta__tags" href="/tags/%E7%9F%A5%E8%AF%86%E7%AC%94%E8%AE%B0/"><span class="tags-name tags-punctuation">知识笔记</span></a><a class="post-meta__tags" href="/tags/%E4%BB%BB%E5%8A%A1%E8%AE%A1%E5%88%92/"><span class="tags-name tags-punctuation">任务计划</span></a><a class="post-meta__tags" href="/tags/%E5%BE%85%E5%8A%9E%E4%BA%8B%E9%A1%B9/"><span class="tags-name tags-punctuation">待办事项</span></a></div></div></div></div><h1 class="post-title">Blossom - 最适合国人使用的笔记项目！</h1><div id="post-meta"><div class="meta-secondline"></div></div></div><section class="main-hero-waves-area waves-area"><svg class="waves-svg" xmlns="http://www.w3.org/2000/svg" xlink="http://www.w3.org/1999/xlink" viewBox="0 24 150 28" preserveAspectRatio="none" shape-rendering="auto"><defs><path id="gentle-wave" d="M -160 44 c 30 0 58 -18 88 -18 s 58 18 88 18 s 58 -18 88 -18 s 58 18 88 18 v 44 h -352 Z"></path></defs><g class="parallax"><use href="#gentle-wave" x="48" y="0"></use><use href="#gentle-wave" x="48" y="3"></use><use href="#gentle-wave" x="48" y="5"></use><use href="#gentle-wave" x="48" y="7"></use></g></svg></section></header><main class="layout" id="content-inner"><div id="post"><article class="post-content" id="article-container"><p>Blossom：意为开花; 绽放。寓意写作就像雨露和养料，最终会使作者的思想和知识开花、结果。<br>Blossom 是一个支持私有部署的笔记软件，本身定位是一个云端软件，但你仍然可以在本地部署，数据和图片都将保存在本地，不依赖任何的图床或者对象存储。同时它具备客户端：支持 Windows 端和 ARM 架构的 Mac 端，以及作为网页端部署。也支持移动端：响应式网页移动端，主要为移动端设计，同时也作为博客供所有人访问。最后则是私有部署的服务端：服务端支持在 Docker 中进行私有化部署，而这一切都开源。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2.png"></p>
<p>项目页</p>
<p>说实话，很少能遇到这么好的项目了，熊猫情不自禁打赏了一些，希望作者能再接再厉。同时也希望大家力所能及的去点一个 Star。项目集合了国人最想要的一些功能，例如待办、首页天气、博客功能以及 markdown 编辑器和记事本等等，功能太多了，这里直接贴一个图展示。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_1.png"></p>
<p>项目功能</p>
<h1 id="体验展示"><a href="#体验展示" class="headerlink" title="体验展示"></a>体验展示</h1><p>项目界面特别小清新好看，不管是作为博客，还是作为自己笔记、记事本以及待办使用体验感都很不错，支持不同板块单独的主题色修改。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_2.png"></p>
<p>主界面</p>
<p>首页会有天气展示，而且还是动态的，基于和风天气的 API 接口。同时在下面也有字数统计、流量统计以及编辑热力图，而在右边还有收藏文章、专题栏目以及待办事项的展示，最右边则是一个导航页。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_3.png"></p>
<p>视图展示</p>
<p>主界面还有很多细节展示，例如电脑旁的产品会根据时间变化，收藏文章下放的三个信息会展示该文章用户访问量、点赞数以及该文章字数。而在字数统计的右边卡片中会展示文章数、总字数以及图片数和图片的总大小。项目处处都有细节，只能说作者牛逼！</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_4.png"></p>
<p>编辑器</p>
<p>编辑器支持新建文件夹、新建文章以及将文件夹设置为专题或者将文章设置为专题目录。同时右上角会有目录以及引用图片的展示，甚至能直接展示 GIF 动图，而不像看到也可以通过 alt+2 快捷键关闭目录。编辑器为 markdown 语法，支持内容蛮多，甚至上方还有番茄时钟让你专注于写作。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_5.png"></p>
<p>图床功能</p>
<p>紧接着就是自带的图床功能了，直接建立专门的文件夹存放专门的图片。当你在其他界面时可以通过左下方的上传图标直接上传图片到图床，又是一处小细节。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_6.png"></p>
<p>待办界面</p>
<p>待办界面也做的很不错，左边是日历，有待办的日期会有数字标记代表当天有多少待办需要去完成，中间则是总览区，会展示详细的信息，新建待办也在这里。而右边则是统计区了，会按照百分比来展示待办的完成率以及各个阶段的任务数。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_7.png"></p>
<p>记事本</p>
<p>日历就不展示了，小伙伴可以自行探索。记事便签是个好东西，支持便签置顶，也可以将便签内容设置为临时文章内容，比如突然有什么灵感了记下来，随后写文就可以在引用栏找到他实现直接引用，很方便。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_8.png"></p>
<p>设置</p>
<p>项目的设置项也蛮多，例如图床地址，图床默认位置以及字体和天气 API 的配置等等，这里不做详细说明了，感兴趣的可以自行部署体验。所以加下来便是如何在 NAS 上部署它的教程了。</p>
<h1 id="部署过程"><a href="#部署过程" class="headerlink" title="部署过程"></a>部署过程</h1><p>作者本身其实已经给到了很详细的部署过程，但是在 NAS 环境下，那一套步骤并不适用，需要做一些修改。由于端口以及映射都给到了，同时项目不需要太高的 docker 权限，所以该项目理论适配所有支持 docker 的 NAS，单位了方便参考，这里我用群辉作为演示机，如果有其他平台设备不懂的可以留言或者通过其他途径找到我寻求帮助。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_9.png"></p>
<p>作者教程</p>
<p>作者前面的步骤都适用于 NAS，所以我们直接照做就是。首先在 docker 文件夹中新建项目文件夹以及在其中新建 mysql 文件夹，最后的目录树应该如图所示：</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_10.png"></p>
<p>目录树</p>
<p>建好目录树之后我们在根目录新建 blossom-mysql8.yaml 文件，将以下内容复制进去并保存（不要用作者原本的，不适用于 NAS 环境）</p>
<figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br></pre></td><td class="code"><pre><span class="line">version: &quot;3&quot;</span><br><span class="line"></span><br><span class="line">networks:</span><br><span class="line">  blossomnet:</span><br><span class="line">    driver:</span><br><span class="line">      bridge</span><br><span class="line"></span><br><span class="line">services:</span><br><span class="line">  blossom:</span><br><span class="line">    image: jasminexzzz/blossom:latest</span><br><span class="line">    container_name: blossom-backend</span><br><span class="line">    volumes:  </span><br><span class="line">      - /volume1/docker/blossom/bl:/home/bl</span><br><span class="line">    environment:</span><br><span class="line">      SPRING_DATASOURCE_URL: jdbc:mysql://192.168.101.66:3309/blossom?useUnicode=true&amp;characterEncoding=utf-8&amp;allowPublicKeyRetrieval=true&amp;allowMultiQueries=true&amp;useSSL=false&amp;&amp;serverTimezone=GMT%2B8</span><br><span class="line">      # 下面账号密码可更改</span><br><span class="line">      SPRING_DATASOURCE_USERNAME: root</span><br><span class="line">      SPRING_DATASOURCE_PASSWORD: jasmine888</span><br><span class="line">      PROJECT_IAAS_BLOS_DOMAIN: http://localhost:9999/pic/</span><br><span class="line">      PROJECT_IAAS_BLOS_DEFAULT-PATH: /volume1/docker/blossom/bl/img</span><br><span class="line">    ports:</span><br><span class="line">      - &quot;9999:9999&quot;</span><br><span class="line">    networks:</span><br><span class="line">      - blossomnet</span><br><span class="line">    healthcheck:</span><br><span class="line">      test: [&quot;CMD&quot;, &quot;curl&quot;, &quot;-f&quot;, &quot;http://localhost:9999/sys/alive&quot;]</span><br><span class="line">      interval: 30s</span><br><span class="line">      timeout: 10s</span><br><span class="line">      retries: 3</span><br><span class="line">      start_period: 5s</span><br><span class="line">    restart: always</span><br><span class="line">    depends_on:</span><br><span class="line">      blmysql:</span><br><span class="line">        condition: service_healthy</span><br><span class="line">  blmysql:</span><br><span class="line">    image: mysql:8.0.31</span><br><span class="line">    container_name: blossom-mysql</span><br><span class="line">    restart: on-failure:3</span><br><span class="line">    volumes:</span><br><span class="line">      - /volume1/docker/blossom/mysql/data:/var/lib/mysql</span><br><span class="line">      - /volume1/docker/blossom/mysql/log:/var/log/mysql</span><br><span class="line">      - /volume1/docker/blossom/mysql/mysql-files:/var/lib/mysql-files</span><br><span class="line">    environment:</span><br><span class="line">      MYSQL_DATABASE: blossom</span><br><span class="line">      # 若上面密码更改，这里密码需与上面一致</span><br><span class="line">      MYSQL_ROOT_PASSWORD: jasmine888</span><br><span class="line">      LANG: C.UTF-8</span><br><span class="line">      TZ: Asia/Shanghai</span><br><span class="line">    ports:</span><br><span class="line">      - &quot;3309:3306&quot;</span><br><span class="line">    networks:</span><br><span class="line">      - blossomnet</span><br><span class="line">    healthcheck:</span><br><span class="line">      test: [&quot;CMD&quot;, &quot;mysqladmin&quot;, &quot;-uroot&quot;, &quot;-pjasmine888&quot;, &quot;ping&quot;, &quot;-h&quot;, &quot;localhost&quot;]</span><br><span class="line">      interval: 10s</span><br><span class="line">      timeout: 3s</span><br><span class="line">      retries: 12</span><br><span class="line"></span><br><span class="line"></span><br></pre></td></tr></table></figure>

<p>这里主要注意的为数据库的地址，原作者由于是云端环境，所以不需要指定 IP，但 NAS 中部署我们需要指定 IP 地址，或者采用 localhost 的形式，上文中的端口 9999 为服务端端口，可以更改，但需所有用到该端口的行都更改，保持一致，数据库同理。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_11.png"></p>
<p>文件编辑</p>
<p>随后我们打开 SSH 工具，通过 SSH 端口连接到群晖，cd 到项目根目录后执行命令：docker-compose -f blossom-mysql8.yaml up -d。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_12.png"></p>
<p>数据库信息</p>
<p>其中会展示数据库信息，这里我们再输入 docker logs blossom-backend 会出现以下内容，那么证明服务端已经部署成功了。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_13.png"></p>
<p>部署成功</p>
<p>此时访问 9999 端口会发现，并没有出现主界面啊！熊猫你教程有问题！！！当然不是了，前面说到了，该项目为多端项目，所以我们这里只是部署的服务端，这一步完成之后咱们就可以下载 WIN 或者 MAC 客户端登录了，当然登录前确保直接访问时你的网页提示是这样的。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_14.png"></p>
<p>网页提示</p>
<p>随后在客户端输入地址，默认的用户名和密码就可以登录了。不过很多小伙伴可能并不想要客户端版本，想要网页版直接登录，那就接着往下看。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_15.png"></p>
<p>项目下载</p>
<p>你可以通过作者的项目主页下载到网页端的源码，随后我们解压到群晖的 web 目录中，最后的目录树应该是这样的。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_16.png"></p>
<p>web 目录</p>
<p>随后我们打开 webstation，在虚拟主机中选择新增，按照我图中所示去设置，端口看你自己需求设置 http 或者 https 都行。主机名可以使域名，也可以是 IP，就看你有没有域名了。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_17.png"></p>
<p>虚拟主机</p>
<p>设置好之后我们访问设置的域名或者 IP + 端口号就可以看到登录界面了，这里登录的地址为你服务端的地址，也就是 <a target="_blank" rel="noopener" href="http://nasip/">http://nasip</a> + 端口号，账户密码初始都为 blos。</p>
<p><img src="https://img.twoice.fun:666//i/2023/12/14/640-2_18.png"></p>
<p>登录界面</p>
<h1 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h1><p>极其强大以及十分符合国人审美和操作习惯的项目，UI 清新简洁且支持多种主题色选择，功能也特别多，避免了多种需求分别部署的麻烦，而是将很多实用常用的功能集合起来方便大家使用，且作者是个细节狂魔，总能在细节处抓住我的需求，他太会了。总之个人感觉是目前我发现最适合部署在 NAS 上的笔记项目了，毕竟还兼容了待办以及记事本这些内容，甚至右边还有导航设置，太强了。</p>
<h3 id="参考资料"><a href="#参考资料" class="headerlink" title="参考资料"></a>参考资料</h3><p>官网：</p>
<p><a target="_blank" rel="noopener" href="https://www.wangyunf.com/blossom-doc/">https://www.wangyunf.com/blossom-doc/</a></p>
</article><div class="post-copyright"><div class="post-copyright__author_group"><a class="post-copyright__author_img" href="/about/"><img class="post-copyright__author_img_front" src="https://bu.dusays.com/2023/11/08/654af68b25bb8.jpg"></a><div class="post-copyright__author_name">二冰</div><div class="post-copyright__author_desc"></div></div><div class="post-tools" id="post-tools"><div class="post-tools-left"><div id="quit-box" onclick="RemoveRewardMask()"></div><div class="post-reward" onclick="AddRewardMask()"><div class="reward-button" title="赞赏作者"><i class="solitude st-hand-heart-fill"></i>打赏作者</div><div class="reward-main"><ul class="reward-all"><span class="reward-title">感谢你赐予我前进的力量</span><ul class="reward-group"><li class="reward-item"><a target="_blank" rel="noopener" href="https://bu.dusays.com/2023/11/07/6549e79364fa3.png"><img class="post-qr-code-img" src="https://bu.dusays.com/2023/11/07/6549e79364fa3.png" alt="微信"></a><div class="post-qr-code-desc">微信</div></li><li class="reward-item"><a href="https://bu.dusays.com/2023/11/07/6549e79d02bd6.png" target="_blank"><img class="post-qr-code-img" src="https://bu.dusays.com/2023/11/07/6549e79d02bd6.png" alt="支付宝"></a><div class="post-qr-code-desc">支付宝</div></li></ul><a class="reward-main-btn" href="/about"><div class="reward-text">赞赏者名单</div><div class="reward-dec">因为你们的支持让我意识到写文章的价值🙏</div></a></ul></div></div><script>function RemoveRewardMask() {
    let rewardMainElements = document.querySelectorAll(".reward-main");
    let quitBoxElement = document.querySelector("#quit-box");

    console.log("RemoveRewardMask")

    rewardMainElements.forEach(element => {
        element.style.display = "none";
    });

    if (quitBoxElement) {
        quitBoxElement.style.display = "none";
    }
}

function AddRewardMask() {
    let rewardMainElements = document.querySelectorAll(".reward-main");
    let quitBoxElement = document.querySelector("#quit-box");

    console.log("AddRewardMask")

    rewardMainElements.forEach(element => {
        element.style.display = "flex";
    });

    if (quitBoxElement) {
        quitBoxElement.style.display = "flex";
    }
}</script></div></div><div class="post-copyright__notice"><span class="post-copyright-info">本文是原创文章，采用<a target="_blank" rel="noopener" href="https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh">CC BY-NC-SA 4.0</a>协议，完整转载请注明来自<a href="/">二冰</a></span></div></div><div class="post-tools-right"><div class="tag_share"><div class="post-meta__tag-list"><a class="post-meta__tags" href="/tags/docker/"><span class="tags-punctuation"></span>docker<span class="tagsPageCount">4</span></a><a class="post-meta__tags" href="/tags/%E7%9F%A5%E8%AF%86%E7%AC%94%E8%AE%B0/"><span class="tags-punctuation"></span>知识笔记<span class="tagsPageCount">1</span></a><a class="post-meta__tags" href="/tags/%E4%BB%BB%E5%8A%A1%E8%AE%A1%E5%88%92/"><span class="tags-punctuation"></span>任务计划<span class="tagsPageCount">1</span></a><a class="post-meta__tags" href="/tags/%E5%BE%85%E5%8A%9E%E4%BA%8B%E9%A1%B9/"><span class="tags-punctuation"></span>待办事项<span class="tagsPageCount">1</span></a></div></div></div><nav class="needEndHide pagination-post" id="pagination"><div class="prev-post pull-left"><a href="/posts/3995.html"><div class="pagination-info"><div class="label">上一篇</div><div class="prev_info">Qexo | Qexo</div></div></a></div><div class="next-post pull-right"><a href="/posts/46195.html"><div class="pagination-info"><div class="label">下一篇</div><div class="next_info">Hexo 常用命令</div></div></a></div></nav><div class="relatedPosts"><div class="headline"><i class="solitude st-star-smile-fill"></i><span>喜欢这篇的人也看了</span><div class="relatedPosts-link"><a onclick="event.preventDefault(); toRandomPost();" href="javascript:void(0);" rel="external nofollow" data-pjax-state="">随便逛逛</a></div></div><div class="relatedPosts-list"><div><a href="/posts/28188.html" title="全网资源搜索引擎汇总"><img class="cover" src="https://cdn.jsdelivr.net/gh/wbsu2003/images2023@main/picgo/2023/08/202310041646226.png" alt="cover"><div class="content is-center"><div class="title">全网资源搜索引擎汇总</div></div></a></div><div><a href="/posts/21745.html" title="Next 主题个性化配置"><img class="cover" src="https://img.twoice.fun:666//i/2023/12/02/hexo常用命令-2.png" alt="cover"><div class="content is-center"><div class="title">Next 主题个性化配置</div></div></a></div></div></div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="card-content"><div class="card-info-avatar is-center"><div class="author-info__top-group"><div class="author-info__sayhi" id="author-info__sayhi" onclick="sco.changeSayHelloText()">sayhello.morning</div></div></div><div class="avatar-img-group"><img class="avatar-img" alt="头像" src="https://bu.dusays.com/2023/11/08/654af68b25bb8.jpg"><div class="avatar-sticker"><img class="avatar-sticker-img" src="https://bu.dusays.com/2023/12/30/659011053e246.png" alt="心情贴纸"></div></div><div class="author-info__description_group"><div class="author-info__description">分享自己对编程的<b>热爱</b>，对美好生活的<b>向往</b>，对知识海洋<b>探索历程</b>。</div><div class="author-info__description2">相信你可以在这里找到对你有用的知识和教程。</div></div><div class="author-info__bottom-group"><a class="author-info__bottom-group-left" href="/about/"><div class="author-info__name">二冰</div><div class="author-info__desc"></div></a><div class="card-info-social-icons is-center"><a class="social-icon" target="_blank" rel="noopener" href="https://github.com/wleelw" title="Github"><i class="solitude  solitude st-github-line"></i></a><a class="social-icon" target="_blank" rel="noopener" href="https://space.bilibili.com/1329819902" title="Bilibili"><i class="solitude  solitude st-bilibili-line"></i></a></div></div></div></div><div class="sticky_layout"><div class="card-widget" id="card-toc"><div class="item-headline"><i class="solitude st-menu-line"></i><span>文章目录</span></div><div class="toc-content" id="toc-content"><ol class="toc"><li class="toc-item toc-level-1"><a class="toc-link" href="#%E4%BD%93%E9%AA%8C%E5%B1%95%E7%A4%BA"><span class="toc-text">体验展示</span></a></li><li class="toc-item toc-level-1"><a class="toc-link" href="#%E9%83%A8%E7%BD%B2%E8%BF%87%E7%A8%8B"><span class="toc-text">部署过程</span></a></li><li class="toc-item toc-level-1"><a class="toc-link" href="#%E6%80%BB%E7%BB%93"><span class="toc-text">总结</span></a><ol class="toc-child"><li class="toc-item toc-level-3"><a class="toc-link" href="#%E5%8F%82%E8%80%83%E8%B5%84%E6%96%99"><span class="toc-text">参考资料</span></a></li></ol></li></ol></li></ol></div></div><div class="card-widget card-recent-post"><div class="item-headline"><i class="solitude st-map-line"></i><span>最近发布</span></div><div class="aside-list"><div class="aside-list-item"><a class="thumbnail" href="/posts/28188.html" title="全网资源搜索引擎汇总"><img alt="全网资源搜索引擎汇总" src="https://cdn.jsdelivr.net/gh/wbsu2003/images2023@main/picgo/2023/08/202310041646226.png"></a><div class="content"><a class="title" href="/posts/28188.html" title="全网资源搜索引擎汇总">全网资源搜索引擎汇总</a><a class="article-recent_post_categories" href="/posts/28188.html">资源汇总</a></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/52.html" title="非常炫酷的电子烟花，快过年了，一起来放吧"><img alt="非常炫酷的电子烟花，快过年了，一起来放吧" src="https://img.twoice.fun:666//i/2024/01/12/v2-183bfae786abd48057160450686ecd32_1440w-2.png"></a><div class="content"><a class="title" href="/posts/52.html" title="非常炫酷的电子烟花，快过年了，一起来放吧">非常炫酷的电子烟花，快过年了，一起来放吧</a><a class="article-recent_post_categories" href="/posts/52.html">源码</a></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/5642.html" title="一条命令永久激活 Win10，赶紧给我收藏起来"><img alt="一条命令永久激活 Win10，赶紧给我收藏起来" src="https://img.twoice.fun:666//i/2024/01/02/v2-e7705b6aac5b5da54e63ca509a24a84d_1440w-2.png"></a><div class="content"><a class="title" href="/posts/5642.html" title="一条命令永久激活 Win10，赶紧给我收藏起来">一条命令永久激活 Win10，赶紧给我收藏起来</a><a class="article-recent_post_categories" href="/posts/5642.html">开源项目</a></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/60570.html" title="开源免费OCR软件，批量识别图片真香"><img alt="开源免费OCR软件，批量识别图片真香" src="https://img.twoice.fun:666//i/2024/01/12/v2-31d2c8300f3964d3a0479548503428c6_1440w-2.png"></a><div class="content"><a class="title" href="/posts/60570.html" title="开源免费OCR软件，批量识别图片真香">开源免费OCR软件，批量识别图片真香</a><a class="article-recent_post_categories" href="/posts/60570.html">Windows软件</a></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/64670.html" title="国产开源的思维导图，一键部署，随时随地使用"><img alt="国产开源的思维导图，一键部署，随时随地使用" src="https://img.twoice.fun:666//i/2024/01/03/2024-1-3-082405-2.png"></a><div class="content"><a class="title" href="/posts/64670.html" title="国产开源的思维导图，一键部署，随时随地使用">国产开源的思维导图，一键部署，随时随地使用</a><a class="article-recent_post_categories" href="/posts/64670.html">vercel</a></div></div></div></div></div></div></main><footer id="footer"><div id="st-footer-bar"><div class="footer-logo"><span class="solitude">TWO-ICE</span></div><div class="footer-bar-description">来自二冰 - 的文章</div><a class="footer-bar-link" href="/">了解更多</a></div><div id="footer_deal"><a class="deal_link" target="_blank" rel="noopener" href="https://github.com/wleelw" title="Github"><i class="solitude  solitude st-github-line"></i></a><a class="deal_link" href="mailto:wleelw@wzsco.top" title="Mail"><i class="solitude  solitude st-mail-line"></i></a><div class="nolazyload footer_mini_logo" id="footer_mini_logo" title="返回顶部" onclick="sco.toTop()"><img src="https://bu.dusays.com/2023/11/08/654af68b25bb8.jpg" alt="返回顶部"></div><a class="deal_link" target="_blank" rel="noopener" href="https://space.bilibili.com/1329819902" title="Bilibili"><i class="solitude  solitude st-bilibili-line"></i></a><a class="deal_link" target="_blank" rel="noopener" href="https://v.douyin.com/iJsLc8jt/" title="抖音"><i class="solitude  solitude st-douyin-fill"></i></a></div><div id="st-footer"><div class="footer-group"><h3 class="footer-title">导航</h3><div class="footer-links"><a class="footer-item" href="/archives/" title="归档">归档</a><a class="footer-item" href="/categories/" title="分类">分类</a><a class="footer-item" href="/tags/" title="标签">标签</a></div></div><div class="footer-group"><h3 class="footer-title">服务</h3><div class="footer-links"><a class="footer-item" target="_blank" rel="noopener" href="https://aliyun.com/" title="阿里云">阿里云</a><a class="footer-item" target="_blank" rel="noopener" href="https://v6.51.la/" title="51la统计">51la统计</a><a class="footer-item" target="_blank" rel="noopener" href="https://tongji.baidu.com/" title="百度统计">百度统计</a></div></div><div class="footer-group"><h3 class="footer-title">支持</h3><div class="footer-links"><a class="footer-item" href="/about/" title="打赏记录">打赏记录</a></div></div><div class="footer-group"><h3 class="footer-title">协议</h3><div class="footer-links"><a class="footer-item" href="/cookies/" title="Cookies">Cookies</a><a class="footer-item" href="/privacy/" title="用户协议">用户协议</a><a class="footer-item" href="/copyright/" title="版权协议">版权协议</a></div></div></div><div id="footer-bar"><div class="footer-bar-links"><div class="footer-bar-left"><div class="copyright">© 2023 - 2024 By&nbsp;<a class="footer-bar-link" href="/">二冰</a></div></div><div class="footer-bar-right"><a class="footer-bar-link" target="_blank" rel="noopener" href="https://github.com/wleelw/hexo-theme-solitude" title="主题">主题</a><a class="footer-bar-link cc"><i class="solitude st-copyright-line"></i><i class="solitude st-creative-commons-by-line"></i><i class="solitude st-creative-commons-nc-line"></i><i class="solitude st-creative-commons-nd-line"></i></a></div></div></div></footer></div><!-- inject body--><div><script src="/js/main.js?v=1.6.0"></script><script src="/js/utils.js?v=1.6.0"></script><!-- lately--><script src="/js/third_party/lately.min.js?v=1.6.0"></script><div id="rightMenu"><div class="rightMenu-group rightMenu-small"><div class="rightMenu-item" id="menu-backward"><i class="solitude st-arrow-left-line"></i></div><div class="rightMenu-item" id="menu-forward"><i class="solitude st-arrow-right-line"></i></div><div class="rightMenu-item" id="menu-refresh"><i class="solitude st-restart-line"></i></div><div class="rightMenu-item" id="menu-top"><i class="solitude st-arrow-up-line"></i></div></div><div class="rightMenu-group rightMenu-line rightMenuPlugin"><div class="rightMenu-item" id="menu-copytext"><i class="solitude st-copy-fill"></i><span>复制选中文本</span></div><div class="rightMenu-item" id="menu-pastetext"><i class="solitude st-clipboard-fill"></i><span>粘贴文本</span></div><div class="rightMenu-item" id="menu-newwindow"><i class="solitude st-window-fill"></i><span>新窗口打开</span></div><div class="rightMenu-item" id="menu-copylink"><i class="solitude st-link-line"></i><span>复制链接地址</span></div><div class="rightMenu-item" id="menu-copyimg"><i class="solitude st-copy-fill"></i><span>复制此图片</span></div><div class="rightMenu-item" id="menu-downloadimg"><i class="solitude st-download-cloud-fill"></i><span>下载此图片</span></div><div class="rightMenu-item" id="menu-search"><i class="solitude st-search-line"></i><span>站内搜索</span></div><div class="rightMenu-item" id="menu-music-toggle"><i class="solitude st-play-fill"></i><span>播放音乐</span></div><div class="rightMenu-item" id="menu-music-back"><i class="solitude st-skip-back-fill"></i><span>切换到上一首</span></div><div class="rightMenu-item" id="menu-music-forward"><i class="solitude st-skip-forward-fill"></i><span>切换到下一首</span></div><div class="rightMenu-item" id="menu-music-playlist" onclick="window.open('https://music.163.com/#/playlist?id=8407304077', '_blank');"><i class="solitude st-play-list-2-line"></i><span>查看所有歌曲</span></div><div class="rightMenu-item" id="menu-music-copyMusicName"><i class="solitude st-copy-fill"></i><span>复制歌名</span></div></div><div class="rightMenu-group rightMenu-line rightMenuOther"><a class="rightMenu-item menu-Link" id="menu-randomPost"><i class="solitude st-signal-tower-fill"></i><span>随便逛逛</span></a><a class="rightMenu-item menu-link" href="/categories/"><i class="solitude st-checkbox-multiple-blank-fill"></i><span>文章分类</span></a><a class="rightMenu-item menu-link" href="/tags/"><i class="solitude st-price-tag-fill"></i><span>文章标签</span></a></div><div class="rightMenu-group rightMenu-line rightMenuOther"><div class="rightMenu-item" id="menu-copy"><i class="solitude st-external-link-fill"></i><span>复制地址</span></div><div class="rightMenu-item" id="menu-darkmode"><i class="solitude st-moon-clear-fill"></i><span class="menu-darkmode-text">浅色模式</span></div></div></div><div id="rightmenu-mask"></div><script src="/js/rightside.js?v=1.6.0"></script><script src="https://cdn.cbd.int/solitude-source/js/universe.min.js"></script><script>dark()
</script><script src="https://cdn.staticfile.org/pjax/0.2.8/pjax.min.js"></script><script src="https://cdn.staticfile.org/node-snackbar/0.1.16/snackbar.min.js"></script><script src="https://cdn.staticfile.org/Swiper/11.0.5/swiper-bundle.min.js"></script><script src="https://cdn.cbd.int/solitude-source/js/waterfall.min.js"></script><script src="https://cdn.staticfile.org/pace/1.2.4/pace.min.js"></script><script src="https://cdn.staticfile.org/lunr.js/2.3.9/lunr.min.js"></script></div><div id="js-pjax"><script id="config-diff">var PAGE_CONFIG = {
    is_post: true,
    is_page: false,
    is_home: false,
    page: 'post',
    toc: true,
    comment: false,
}
</script></div><!-- newest comment--><!-- pjax--><script>let pjaxSelectors = [
    'title',
    '#body-wrap',
    '#site-config',
    'meta[name="description"]',
    '#js-pjax',
    'meta[property^="og:"]',
]

const pjax = new Pjax({
    elements: 'a:not([target="_blank"])',
    selectors: pjaxSelectors,
    cacheBust: false,
    analytics: false,
    scrollRestoration: false
})

document.querySelectorAll('script[data-pjax]').forEach(item => {
    const newScript = document.createElement('script')
    const content = item.text || item.textContent || item.innerHTML || ""
    Array.from(item.attributes).forEach(attr => newScript.setAttribute(attr.name, attr.value))
    newScript.appendChild(document.createTextNode(content))
    item.parentNode.replaceChild(newScript, item)
})

document.addEventListener('pjax:complete', () => {
    window.refreshFn()
})

document.addEventListener('pjax:error', (e) => {
    if (e.request.status === 404) {
        pjax.loadUrl('/404.html')
    }
})</script><!-- theme--><script>initTheme = () => {
    const cachedMode = saveToLocal.get('theme');
    if (cachedMode === undefined)
        document.documentElement.setAttribute('data-theme', 'dark');
    else
        document.documentElement.setAttribute('data-theme', cachedMode);
}
initTheme()</script><!-- google adsense--><!-- search--><div id="local-search"><div class="search-dialog"><nav class="search-nav"><span class="search-dialog-title">搜索</span><button class="search-close-button"><i class="solitude st-close-fill"></i></button></nav><div class="search-wrap"><div class="search-box"><input class="search-box-input" id="search-input" type="text" autocomplete="off" spellcheck="false" autocorrect="off" autocapitalize="off" placeholder="输入关键词快速查找"></div><div id="search-results"><div id="search-hits"></div></div><div id="search-pagination"></div><div id="search-tips"></div></div></div><div id="search-mask"></div></div><script src="/js/search/local.js?v=1.6.0"></script><!-- music--></body></html><script>const posts=["posts/28188.html","posts/52.html","posts/5642.html","posts/60570.html","posts/64670.html","posts/27388.html","posts/21745.html","posts/60283.html","posts/3995.html","posts/1717.html","posts/46195.html","posts/61904.html"];function toRandomPost(){ pjax.loadUrl('/'+posts[Math.floor(Math.random()*posts.length)]); }</script>